package JDBC_Agent;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
public class SqlInfo {
    public Long begin;// 时间戳
    public Long useTime;
    // jdbc url
    public String jdbcUrl;
    // sql 语句
    public String sql;
    // 数据库名称
    public String databaseName;
    // 异常信息
    public String error;
    //参数列表
    public Map<Integer , Object> params;

    public SqlInfo() {
        params = new HashMap<>();
    }
    @Override
    public String toString() {
        for(int i = 1 ; i <= params.size() ; i++) {
            sql = sql.replaceFirst("\\?" , params.get(i).toString());
        }
        return "SqlInfo{" +
                "begin=" + new SimpleDateFormat("yyyy-MM-dd:HH:mm:ss").format(new Date(begin)) +
                ", useTime=" + useTime +
                ", jdbcUrl='" + jdbcUrl + '\'' +
                ", sql='" + sql + '\'' +
                ", databaseName='" + databaseName + '\'' +
                ", error='" + error + '\'' +
                '}';
    }
}
